﻿using KWT.DRG_DIP.DO.Group.DIPGroup;
using KWT.DRG_DIP.DO.Group.DRGGroup;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace KWT.DRG_DIP.DO.Group
{
    /// <summary>
    /// 分组器入参基类
    /// </summary>
    public class GroupInputParaBase
    {
        /// <summary>
        /// 诊断组
        /// </summary>
        public List<Diagnose> diagnoses { get; set; } = new List<Diagnose>();
        /// <summary>
        ///  手术组
        /// </summary>
        public List<Operation> operation { get; set; } = new List<Operation>();

        /// <summary>
        /// 分组器版本
        /// </summary>
        public string version { get; set; } = "1";
    }

    /// <summary>
    /// 诊断
    /// </summary>
    public class Diagnose
    {
        /// <summary>
        /// 诊断编码 -医保
        /// </summary>
        public required string medicalInsuranceCode { get; set; }

        /// <summary>
        /// 诊断名称 -医保
        /// </summary>
        public string? medicalInsuranceName { get; set; }

        /// <summary>
        /// 是否主诊断 1：是；0 否
        /// </summary>
        public int IsMain { get; set; } = 0;
    }

    /// <summary>
    /// 手术
    /// </summary>
    public class Operation
    {


        /// <summary>
        /// 手术编码 -医保
        /// </summary>
        public required string medicalInsuranceCode { get; set; }

        /// <summary>
        /// 手术名称 -医保
        /// </summary>
        public string? medicalInsuranceName { get; set; }

        /// <summary>
        /// 是否主手术 1：是；0 否
        /// </summary>
        public int IsMain { get; set; } = 0;
    }
}
